package com.lzdongrui.backend.mapper;

import java.util.List;
import com.lzdongrui.backend.domain.College;
import com.lzdongrui.backend.domain.dto.CollegeDTO;
import com.lzdongrui.backend.domain.vo.CollegeVO;

/**
 * 学院Mapper接口
 * 
 * @author wyh
 * @date 2023-04-28
 */
public interface CollegeMapper 
{
    /**
     * 查询学院
     * 
     * @param id 学院主键
     * @return 学院
     */
    public College selectCollegeById(Long id);

    /**
     * 查询学院列表
     * 
     * @param collegeDTO 学院
     * @return 学院集合
     */
    public List<CollegeVO> selectCollegeList(CollegeDTO collegeDTO);

    /**
     * 新增学院
     * 
     * @param college 学院
     * @return 结果
     */
    public int insertCollege(College college);

    /**
     * 修改学院
     * 
     * @param college 学院
     * @return 结果
     */
    public int updateCollege(College college);

    /**
     * 删除学院
     * 
     * @param id 学院主键
     * @return 结果
     */
    public int deleteCollegeById(Long id);

    /**
     * 批量删除学院
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteCollegeByIds(Long[] ids);

    /**
     * 查询需要对比的数据是否有重复（包含code、以及名称）
     *
     * @param college
     * @return
     */
    College selectCollegeInfo(College college);

    List<College> selectCollegeAllList(CollegeDTO collegeDTO);

    List<College> selectCollegeListByCampusId(College college);

    /**
     * 查询学院是否存在
     *
     * @param collegeCode
     * @return
     */
    College selectCollegeInfoByCode(String collegeCode);

}
